//https://leetcode.cn/problems/trim-a-binary-search-tree/
package codeRandomThoughts.Test669修剪二叉搜索树;

import codeRandomThoughts.utils.TreeNode;

public class Solution {
    public TreeNode trimBST(TreeNode root, int low, int high) {
        if (root == null) {
            return null;
        }

        //修剪的逻辑
        if (root.val < low) {
            return trimBST(root.right, low, high);
        }
        if (root.val > high) {
            return trimBST(root.left, low, high);
        }

        //本层的逻辑
        root.left = trimBST(root.left, low, high);
        root.right = trimBST(root.right, low, high);

        return root;
    }
}
